package com.basics.common.utils.weixin.model.pay;


import lombok.Data;

@Data
public class WeixinRefundOrder {

    /**
     * 必填字段：公众号的APPID
     */
    private String appid;

    /**
     * 必填字段：微信支付分配的商户号
     */
    private String mch_id;

    /**
     * 必填字段：随机字符串，不长于32位。使用随机算法(可以使用UUID截取中间30位然后转换成大写)
     */
    private String nonce_str;

    /**
     * 必填字段：签名（使用签名算法工具类）
     */
    private String sign;

    /**
     * 微信生成的订单号，在支付通知中有返回  与out_trade_no二选一
     */
    private  String transaction_id;

    /**
     * 必填字段：商户订单号；商户系统内部的订单号，32个字符内，可包含字母。
     */
    private String out_trade_no;

    /**
     * 商户系统内部的退款单号，商户系统内部唯一，只能是数字、大小写字母_-|*@ ，同一退款单号多次请求只退一笔。
     */
    private String out_refund_no;

    /**
     * 必填字段：总金额；订单总金额，单位为【分】
     */
    private String total_fee;

    /**
     * 退款总金额，订单总金额，单位为分，只能为整数
     */
    private int refund_fee;

    //非必填字段：异步接收微信支付退款结果通知的回调地址，通知URL必须为外网可访问的url，不允许带参数
    private String notify_url;


    // 货币类型，符合ISO 4217标准的三位字母代码，默认人民币：CNY
    private String refund_fee_type;

    // 	若商户传入，会在下发给用户的退款消息中体现退款原因注意：若订单退款金额≤1元，且属于部分退款，则不会在退款消息中体现退款原因
    private String refund_desc;

    // 仅针对老资金流商户使用
    private String refund_account;

    // 签名类型，目前支持HMAC-SHA256和MD5，默认为MD5
    private String sign_type;





}

